<?php
include_once $_SERVER['DOCUMENT_ROOT'] . "/library/PHPExcel/Classes/PHPExcel.php";
include_once $_SERVER['DOCUMENT_ROOT'] . "/library/phpqrcode/qrlib.php";
include_once $_SERVER['DOCUMENT_ROOT'] . "/conf/config.php";

$head = ($_POST['page']-1)*$_POST['rec'] + 2;
$tail = $head + 20;

// 엑셀 파일을 읽어 들인다.
$oReader = PHPExcel_IOFactory::load($_POST['file']);
$oSheet = $oReader->getActiveSheet();

// 엑셀 파일의 레코드 개수를 구한다.
$highestRow = $oSheet->getHighestRow();

// 마지막인가?
if ($highestRow >= $tail) {
	$highestRow = $tail;
	$completed = "not yet";
}
else {
	$completed = "completed";
}

$highestColumn = $oSheet->getHighestColumn();
$highestColumnIndex = PHPExcel_Cell::columnIndexFromString($highestColumn);

$dbconn = @mysql_connect($dbhost, $dbuser, $dbpass);
@mysql_select_db($dbname, $dbconn);

// 다음 지도 API 쿼리 스트링
$request = 'http://apis.daum.net/maps/addr2coord?apikey=' . $daum_key . '&output=json&q=';

// 데이터베이스 삽입 쿼리 스트링
$excelQRY = "insert into qr_data values (";

for ($row = $head; $row <= $highestRow; ++$row)
{
	$oCell = array();
	for ($col = 0; $col < $highestColumnIndex; ++$col)
		$oCell[] = $oSheet->getCellByColumnAndRow($col, $row)->getValue();
	
	// 요청을 수행합니다.
	$map_request = $request . urlencode($oCell[1] . " " . $oCell[2] . " " . $oCell[3] . " " . $oCell[4]);
	$map_result = json_decode(file_get_contents($map_request), true);
	
	// 배열의 값을 변경한다.
	if (trim($oCell[12]) == "") $oCell[12] = "0000-00-00";
	$oCell[13]  = $map_result[channel][item][0][lat];
	$oCell[14]  = $map_result[channel][item][0][lng];
	$oCell[15]  = str_replace(" ", ".", trim($oCell[5])) . ".";
	$oCell[15] .= str_replace(" ", ".", trim($oCell[6])) . ".";
	$oCell[15] .= str_replace(" ", ".", trim($oCell[7])) . ".";
	$oCell[15] .= str_replace(" ", ".", trim($oCell[8])) . ".png";
	$oCell[15]  = str_replace("..", ".", $oCell[15]);
	
	// QR Code 생성
	QRcode::png($code_key.$oCell[0], $_SERVER['DOCUMENT_ROOT'].'/'.$code_loc.$oCell[15], 'H', 4, 2);
	
	// 쿼리 스트링 생성
	$tmpQRY = "";
	for($_ndx=0; $_ndx<=25; $_ndx++) $tmpQRY .= "'" . $oCell[$_ndx] . "',";
	
	$execQRY = $excelQRY . substr($tmpQRY, 0, strlen($tmpQRY)-1) . ");";
	
	@mysql_query($execQRY, $dbconn);
}

// 엑셀 파일을 닫는다.
$oReader->disconnectWorksheets();
unset($oSheet);
unset($oReader);

// 데이터베이스 닫는다
@mysql_close($dbconn);

// 엑셀파일 삭제
if($completed == "completed") @unlink($_POST['file']);

echo json_encode(array('file' => $_POST['file'], 'completed' => $completed));
?>